console.log(`加载 doctype_list_js 级别 lczz-list ing👇`)
frappe.provide('alz')
alz.下一步 = (params) => {
    // alert(params)
    console.log(`params 👉`, params)
    alz.立即执行下一步 = true
    frappe.set_route("Form", 'lczz', params);

}

alz.已是只看自己 = false

frappe.router.on("change",
    (params) => {
        console.log(`router变化 ing👇`)
        // if (Object.keys(frappe.pages).length > 0) {
        // console.log(`frappe.pages 不为空了👉`, frappe.pages);
        let routestr = frappe.get_route_str()
        console.log(`routestr 👉`, routestr)
        // console.log(`frappe.router 👉`, frappe.router)
        // console.log(`frappe.route_history[0] 👉`, frappe.route_history[0])
        if (routestr.includes('lczz/Kanban')) {
            if (!alz.已是只看自己) {
                let page = frappe.pages["List/lczz/Kanban/默认"].page
                // console.log(`page 👉`, page)
                page.add_inner_button('只看自己', () => {
                    url添加过滤条件()
                }, '', "success")
                url添加过滤条件()
            }
        } else {
            console.log(`其他页面 ing👇`)
            alz.已是只看自己 = false
            return
        }
        // }
    });

// url设置过滤条件不会触发router的change事件
async function url添加过滤条件() {
    let res = await frappe.call({
        method: "lczz.utils.a.当前角色"
    });
    // console.log(`当前角色 res 👉`, res)
    // let 当前角色 = res.message[0]
    let 当前角色 = res.message
    console.log(`当前角色 👉`,当前角色)
    // let 当前角色str = 当前角色.join(',')
    let 当前角色str = JSON.stringify(当前角色, null, "");
    console.log(`当前角色str 👉`,当前角色str)
    // console.log(`frappe.sesion.user 👉`,frappe.sesion.user)
    // let 查询字符串 = `?当前负责角色=["like","%${当前角色}%"]`
    // let 查询字符串 = `?当前负责角色=["in",["Stock+User","Supplier"]]`
    let 查询字符串 = `?当前负责角色=["in",[${当前角色str}]]`
    // let 查询字符串 = '?name=%5B%22like%22%2C%22%250030%25%22%5D'
    查询字符串 = encodeURI(查询字符串)
    console.log(`查询字符串 👉`, 查询字符串)

    alz.已是只看自己 = true
    frappe.router.push_state(查询字符串);

    // let ecurl=encodeURIComponent('["like","%0030%"]')
    // let url=`app/lczz/view/kanban/默认?name=${ecurl}`
    // let url='app/lczz/view/kanban/默认?name=%5B"like"%2C"%250030%25"%5D'
    // let url='app/lczz/view/kanban/默认?name=["like","%0030%"]'
    // http://development.localhost:8000/app/lczz/view/kanban/
    // %E9%BB%98%E8%AE%A4?name=%5B%22like%22%2C%22%250030%25%22%5D
    // http://development.localhost:8000/app/lczz/view/kanban/%E9%BB%98%E8%AE%A4?name=%5B%22like%22%2C%22%250031%25%22%5D
    // let query_string = "?name=%5B%22like%22%2C%22%250031%25%22%5D"
    // //  "?name=%5B%22like%22%2C%22%250031%25%22%5D"
    // let url = 'app/lczz/view/kanban/%E9%BB%98%E8%AE%A4?name=%5B%22like%22%2C%22%250030%25%22%5D'
    // console.log(`url 👉`, url)
    // frappe.set_route(url);
    // frappe.app.set_route(url);

    // window.location.href = url;
}

// console.log(`frappe 👉`, frappe)
// console.log(`frappe.get_route_str() 👉`,frappe.get_route_str())
// console.log(`frappe.pages 👉`, frappe.pages)

// // 定义一个定时器变量，用于后续清除定时器操作
// let checkPagesTimer;
// let filter_list
// function checkFrappePages() {
//     if (Object.keys(frappe.pages).length > 0) {
//         console.log(`frappe.pages 不为空了👉`, frappe.pages);
//         let routestr = frappe.get_route_str()
//         if (routestr.includes('lczz/Kanban')) {
//             // console.log(`routestr 👉`, routestr)
//         } else {
//             console.log(`其他页面 ing👇`)
//             clearInterval(checkPagesTimer);
//             return
//         }

//         let list_view = frappe.pages["List/lczz/Kanban/默认"].list_view

//         // if (!list_view) {
//         //     // console.log(`list_view还没有渲染好 ing👇`)
//         //     return
//         // }
//         // console.log(`list_view 有了👉`, list_view)
//         // let filters = list_view.filters
//         // console.log(`filters 👉`, filters)
//         // // filters.push([
//         // //     "lczz",
//         // //     "name",
//         // //     "like",
//         // //     "%0030%"
//         // // ])
//         // // list_view.refresh()
//         // filter_list = list_view.filter_area.filter_list
//         // console.log(`filter_list 👉`, filter_list)

//         // let args = {
//         //     condition: "like",
//         //     doctype: "lczz",
//         //     fieldname: "name",
//         //     parent_doctype: "lczz",
//         //     value: "%0031%"
//         // }

//         // console.log(`args 👉`, args)
//         // let filter = new frappe.ui.Filter(args);
//         // filter_list.filters = []
//         // filter_list.filters.push(filter);
//         // filter_list.apply()

//         let page = frappe.pages["List/lczz/Kanban/默认"].page
//         // console.log(`page 👉`, page)
//         page.add_inner_button('只看自己', (params) => {
//             url添加过滤条件()
//         }, '', "success")

//         // frappe.pages不为空对象了，清除定时器，停止监听
//         clearInterval(checkPagesTimer);
//         url添加过滤条件()
//     }
// }
// // 每隔一定时间（这里设置为100毫秒，你可以根据实际情况调整间隔时间）检查一次frappe.pages是否为空对象
// checkPagesTimer = setInterval(checkFrappePages, 100);



function 添加过滤条件() {
    let args = {
        condition: "like",
        doctype: "lczz",
        fieldname: "name",
        parent_doctype: "lczz",
        value: "%0031%"
    }

    console.log(`args 👉`, args)
    let filter = new frappe.ui.Filter(args);
    filter_list.filters = []
    filter_list.filters.push(filter);
    filter_list.apply()
}


// let view_class = frappe.views['Kanban' + "View"];
// console.log(`view_class 👉`,view_class)

// $(document).ready(function () {
//     let page_name = "List/lczz/Kanban/默认"
//     let view = frappe.views.list_view[page_name]
//     console.log(`view 👉`, view)
// });
// window.addEventListener('DOMContentLoaded', function () {
//     let page_name = "List/lczz/Kanban/默认"
//     let view = frappe.views.list_view[page_name]
//     console.log(`view 👉`, view)
//     let page=view.page
//     var $btn_add = page.wrapper.find(".add-card");
//     $btn_add.remove();
// });

// window.onload = function () {
//     let page_name="List/lczz/Kanban/默认"
//     let view=frappe.views.list_view[page_name]
//     console.log(`view 👉`,view)
// };
// (function() {
//     const originalOpen = XMLHttpRequest.prototype.open;
//     const originalSend = XMLHttpRequest.prototype.send;

//     XMLHttpRequest.prototype.open = function(method, url) {
//         this._url = url;  // 保存请求的 URL
//         originalOpen.apply(this, arguments);
//     };

//     XMLHttpRequest.prototype.send = function(body) {
//         // 在这里添加自定义的信息到请求 headers 或请求体
//         if (this._url) {
//             this.setRequestHeader("amtf", "YourCustomValue"); // 添加自定义头
//             // 如果需要修改请求体，也可以在此进行
//         }
//         originalSend.apply(this, arguments);  // 发送请求
//     };
// })();



// // 保存原始的 frappe.call 函数
// const originalFrappeCall = frappe.call;

// // 创建扩展的 frappe.call 函数
// frappe.call = function (opts) {
//     // 新增自定义参数，例如：在 opts.args 中添加一个自定义参数
//     if (!opts.args) {
//         opts.args = {}; // 确保 opts.args 是一个对象
//     }

//     // 在这里添加你的自定义参数
//     opts.args.customParam = "your_custom_value"; // 可根据需要动态设置值

//     // 你可以在这里添加其他自定义逻辑，例如日志
//     console.log("Custom frappe.call invoked with args:", opts.args);

//     // 调用原始的 frappe.call
//     return originalFrappeCall.apply(this, arguments);
// };

